package com.ljh.lottery.service.activitystatus.operator;

import com.ljh.lottery.service.dto.ConvertActivityStatusDTO;

/**
 * @author: Themberfue
 * @date: 2025/4/17 10:38
 * @description:
 */
 public abstract class AbstractActivityOperator {

    /**
     * 控制处理顺序：策略模式的体现
     * @return 处理顺序权重
     */
    public abstract Integer sequence();

    /**
     * 是否需要转换
     * @param convertActivityStatusDTO 扭转状态参数
     * @return 是否需要扭转状态
     */
    public abstract Boolean needConvert(ConvertActivityStatusDTO convertActivityStatusDTO);

    /**
     * 扭转状态
     * @param convertActivityStatusDTO 扭转状态参数
     * @return 是否扭转状态成功
     */
    public abstract Boolean convert(ConvertActivityStatusDTO convertActivityStatusDTO);
}
